<?php

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 * Description of produtos_lojas
 *
 * @author link2
 */
class Produtos_lojas extends ADM_Controller {

    //put your code here

    public function __construct() {
        parent::__construct();
        $this->load->language('ecommerce/produtos_lojas');
        $this->load->helper('html');
        $this->load->model('ecommerce/produtos_lojas_model');
        $this->checar_metodo(uri_string());
    }

    public function cadastrar() {
        $v_dados = array();
        $v_dados['title_acao'] = $this->lang->line('title_acao_cadastrar');
        $v_dados['link_listar_loja'] = $this->permissions->get_url('ecommerce_produtos_lojas_consultar');
        $v_dados['id'] = '';
        $v_dados['nome'] = '';
        $v_dados['margem_lucro'] = '';
        $v_dados['max_parcelas'] = '';
        $v_dados['action_produtos_lojas_gravar'] = $this->permissions->get_url('ecommerce_produtos_lojas_gravar');
        $v_dados = $this->lang->multi_line($v_dados);
        $this->parser->parse_cms('ecommerce_produtos_lojas_view', $v_dados);
    }

    public function alterar($_id) {
        $_b_consultar = $this->produtos_lojas_model->consultar($_id);
        $_b_consultar = $_b_consultar[0];
        $v_dados = array();
        $v_dados['title_acao'] = $this->lang->line('title_acao_alterar');
        $v_dados['id'] = $_b_consultar->id;
        $v_dados['nome'] = $_b_consultar->nome;
        $v_dados['margem_lucro'] = formataString(array('entrada' =>  $_b_consultar->margem_lucro, 'formato' => 'moedaView', 'casas' => 2));
        $v_dados['max_parcelas'] = $_b_consultar->max_parcelas;
        $v_dados['action_produtos_lojas_gravar'] = $this->permissions->get_url('ecommerce_produtos_lojas_gravar');
        $v_dados['link_listar_loja'] = $this->permissions->get_url('ecommerce_produtos_lojas_consultar');
        $v_dados = $this->lang->multi_line($v_dados);
        $this->parser->parse_cms('ecommerce_produtos_lojas_view', $v_dados);
    }

    public function gravar() {
        $v_dados = array();
        $this->load->library('form_validation');
        $this->form_validation->set_rules('nome', 'lang:lang_title_nome', 'trim|required|callback_loja_unica[id]');
        $this->form_validation->set_rules('margem_lucro', 'lang:lang_title_margem_lucro', 'trim|required');
        $this->form_validation->set_rules('max_parcelas', 'lang:lang_title_max_parcelas', 'trim|required|is_natural_no_zero');

        if ($this->form_validation->run($this) === FALSE) {
            $v_dados['cod'] = 111;
            $v_dados['msg'] = $this->lang->line('lang_msg_submit_warning');
            $v_dados['header'] = $this->lang->line('lang_header_submit_warning');
            $v_dados['campos'] = $this->form_validation->erros_campos_json();
        } else {
            $_dados = array();
            $_dados['nome'] = trim($this->input->post('nome'));
            $_dados['margem_lucro'] = formataString(array('entrada' =>  trim($this->input->post('margem_lucro')), 'formato' => 'moedaDb', 'casas' => 2)); 
            $_dados['max_parcelas'] = (int) trim($this->input->post('max_parcelas'));
            if ($this->input->post('id') == '') {
                $v_dados['id'] = $this->produtos_lojas_model->cadastrar($_dados);
                $v_dados['cod'] = 999;
                $v_dados['msg'] = $this->lang->line('lang_msg_submit_success');
                $v_dados['header'] = $this->lang->line('lang_header_submit_success');
            } else {
                $this->produtos_lojas_model->alterar($this->input->post('id'), $_dados);
                $v_dados['id'] = $this->input->post('id');
                $v_dados['cod'] = 999;
                $v_dados['msg'] = $this->lang->line('lang_msg_submit_success');
                $v_dados['header'] = $this->lang->line('lang_header_submit_success');
            }
        }
        echo json_encode($v_dados);
    }

    public function loja_unica($nome, $id) {
        if ($this->input->post($id) == '') {
            $_b_consultar = $this->produtos_lojas_model->get_nome($nome);
            if ($_b_consultar == null) {
                return TRUE;
            } else {
                $this->form_validation->set_message('loja_unica', $this->lang->line('lang_loja_unica'));
                return FALSE;
            }
        } else {
            return TRUE;
        }
    }

    public function consultar() {
        $v_dados = array();
        $v_dados['lojas'] = array();
        $_b_consultar = $this->produtos_lojas_model->consultar_total();
        if ($_b_consultar != null) {
            foreach ($_b_consultar as $k => $v) {
                $v_dados['lojas'][$k]['id'] = $v->id;
                $v_dados['lojas'][$k]['nome'] = $v->nome;
                $v_dados['lojas'][$k]['margem_lucro'] = formataString(array('entrada' =>  $v->margem_lucro, 'formato' => 'moedaView', 'casas' => 2));
                $v_dados['lojas'][$k]['max_parcelas'] = $v->max_parcelas;
                $v_dados['lojas'][$k]['acao'] = anchor(base_cms() . $this->permissions->get_url('ecommerce_produtos_lojas_alterar') . '/' . $v->id, $this->lang->line('title_acao_alterar'), 'class="btn small"');
            }
        }
        $v_dados['link_cadastrar_loja'] = $this->permissions->get_url('ecommerce_produtos_lojas_cadastrar');
        $v_dados = $this->lang->multi_line($v_dados);
        $this->parser->parse_cms('ecommerce_produtos_lojas_lista_view', $v_dados);
    }

}